package org.jclosures.collections;

import java.util.Collection;

import org.jclosures.function.Function1;
import org.jclosures.function.Function2;

public interface FunctionalCollection<E> extends Collection<E> {

	<F> FunctionalCollection<F> map(Function1<E, F> f);

	<RT> RT fold(Function2<E, RT, RT> f, RT e);
	
}
